home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1999 March / EnigmA AMIGA RUN 35 (1999)(G.R. Edizioni)(IT)[!][issue 1999-03].iso / earcd / devel / wild / support / profilerlibrary / test.s < prev    next >
Text File  |  1999-01-01  |  1KB  |  84 lines

  1.  
  2.         include    PyperMacro.i
  3.         include    exec/exec_lib.i
  4.         include    profiler.i
  5.  
  6. profilethis    moveq.l    #0,d0
  7.         lea.l    proname,a1
  8.         Exec
  9.         Call    OpenLibrary
  10.         move.l    d0,_ProfilerBase
  11.         
  12.         movea.l    d0,a6
  13.         lea.l    ct,a0
  14.         Call    CreateProfilerHandler
  15.         move.l    d0,prh
  16.                 
  17.         bsr    TestThat
  18.  
  19.         movea.l    _ProfilerBase,a6
  20.         move.l    prh,a0
  21.         suba.l    a1,a1
  22.         Call    CreateLog
  23.         
  24.         movea.l    _ProfilerBase,a6
  25.         move.l    prh,a0
  26.         Call    DeleteProfilerHandler
  27.         
  28.         move.l    a6,a1
  29.         Exec
  30.         Call    CloseLibrary
  31.         moveq.l    #0,d0
  32.         rts
  33.  
  34. TestThat    moveq.l    #10,d7
  35.         movea.l    _ProfilerBase,a6
  36. .looping    move.l    prh,a0
  37.         Call    NewCycle
  38.  
  39.         move.l    #60000,d0
  40. .loop1        clr.l    -(a7)
  41.         clr.l    (a7)+
  42.         dbra    d0,.loop1
  43.         move.l    prh,a0
  44.         Call    EventReached
  45.  
  46.         move.l    #60000,d0
  47. .loop2        move.l    d1,d2
  48.         move.l    d2,-(a7)
  49.         move.l    d2,d3
  50.         move.l    d3,-(a7)
  51.         move.l    d3,d4
  52.         move.l    d4,(a7)+
  53.         move.l    d4,d5
  54.         move.l    d5,(a7)+
  55.         dbra    d0,.loop2
  56.         move.l    prh,a0
  57.         Call    EventReached
  58.  
  59.         move.l    #60000,d0
  60. .loop3        move.l    d0,d1
  61.         add.l    d1,d1
  62.         move.l    d1,-(a7)
  63.         add.l    d1,(a7)+
  64.         dbra    d0,.loop3
  65.         move.l    prh,a0
  66.         Call    EventReached
  67.         move.l    prh,a0
  68.         Call    EndCycle
  69.         dbra    d7,.looping
  70.         rts        
  71.  
  72. _ProfilerBase    dc.l    0
  73. prh        dc.l    0
  74. ct        dc.l    PRF_Name,tname
  75.         dc.l    PRF_EventsArray,ea
  76.         dc.l    0
  77. ea        dc.l    ev1n,ev2n,ev3n,0
  78. proname        dc.b    'profiler.library',0        
  79. tname        dc.b    'Testing...',0
  80. ev1n        dc.b    'Event1',0
  81. ev2n        dc.b    'Event2',0
  82. ev3n        dc.b    'Event3',0
  83.  
  84.